MC_MoveAbsolute

Function block MC_MoveAbsolute
Commands a controlled motion to a specified absolute position.
VAR_IN_OUT
B AxisIn AXIS_REF Reference to an axis.
VAR_INPUT
B Execute BOOL Starts the motion at rising edge.
E ContinuousUpdate BOOL If TRUE, when the function block (FB) is running and the values of the parameters are updated, the FB will use the new value. If FALSE, the FB won't use the new value.
B Position LREAL Absolute position when the reference signal is detected. [unit]
B Velocity LREAL Value of the maximum velocity. Not necessarily reached if the target position is close. [unit/second]
E Acceleration LREAL Value of the acceleration. Always positive. The unit is determined by MC_ProfileType. (increasing power of the motor) [unit/second2] or [second]
E Deceleration LREAL Value of the deceleration. Always positive. The unit is determined by MC_ProfileType. (decreasing power of the motor) [unit/second2] or [second]
E Jerk LREAL Value of the jerk. Always positive. The unit is determined by MC_ProfileType. [unit/second3] or [second]
B Direction MC_Direction The moving direction of an axis.
E BufferMode MC_BufferMode Defines how to blend the velocity of two function blocks.
VAR_OUTPUT
B Done BOOL Commanded position reached.
E Busy BOOL The function block is not finished and new output values are to be expected.
E Active BOOL The function block is controlling the axis.
E CommandAborted BOOL The command is aborted by another command.
B Error BOOL Signals that an error has occurred within the function block.
E ErrorID MC_Error Error identification.
  • If this function block is aborted, the untraveled distance will be abandoned.
  • This action completes with velocity zero if no further actions are pending.
  • If there is only one mathematical solution to reach the commanded position (like in linear systems), the value of the input Direction is ignored.
  • For modulo axis, valid absolute position values are in the range of [0, 360), or corresponding range. The application however may shift the "commanded position" of MC_MoveAbsolute into the corresponding modulo range.
  • The enum type mcShortestWay focuses on a trajectory that goes through the shortest route. The decision which direction to go is based on the current position where the command is issued.
  • For more information about how the blending modes work, see Concepts > Blend movements.

 

  MC_MoveAbsolute  
AXIS_REF   AxisIn   Axis   AXIS_REF
BOOL   Execute   Done   BOOL
BOOL   ContinuousUpdate   Busy   BOOL
LREAL   Position   Active   BOOL
LREAL   Velocity   CommandAborted   BOOL
LREAL   Acceleration   Error   BOOL
LREAL   Deceleration   ErrorID   MC_Error
LREAL   Jerk        
MC_Direction   Direction        
MC_BufferMode   BufferMode        
             

The following figure shows two examples of the combination of two absolute move function blocks:

  1. The left part of the timing diagram illustrates the case if the Second function block (FB) is called after the First one. If First reaches the commanded position of 6000 (and the velocity is 0), then the output Done causes the Second FB to move to the Position 10000.
  2. The right part of the timing diagram illustrates the case if the Second function block (FB) starts the execution while the First FB is still executing. In this case the First motion is interrupted and aborted by the Test signal during the constant velocity of the First FB. The Second FB moves directly to the position 10000 although the position of 6000 is not yet reached.

NOTE:  The examples are based on two instances of the function block: the instance “First” and ”Second.”